package chatserver.roles;


public class Rights {
    
    public enum Global
    {
        Talk(false), TalkTo(false), UseColor(false),
        CanHaveChannelRights(false), SetBirthday(false),
        ViewIP(false), ViewAlias(false), ViewServerOps(false), ViewServerBans(false), ViewChannelLog(false),
        ServerKick(true), ServerBan(true), ServerOp(true), ChangeUserInfo(true), CanHide(false),
        AdministrateChannels(false), AddChannel(false), KillChannels(false), HasBoldText(false),
        AdministrateServer(false), OverrideChannelProfile(false),
        JoinAdminChannels(false), JoinVIPChannels(false);
      
        private boolean hasModifier;
        
        Global(boolean hasModifier)
        {
            this.hasModifier = hasModifier;
        }
      
        public boolean hasModifier()
        {
            return hasModifier;
        }
    }
    
    public enum Channel
    {
        CanHaveChannelRights(false), Talk(false), TalkWithColor(false), SetTopic(false), TalkOnModerated(false),
        Kick(true), Ban(true), Op(true),
        KickAutoOp(true), BanAutoOp(true), OpAutoOp(true),
        OpTo(true), AutoOp(false),
        IsCreator(false), IsVIP(false),
        ViewAutoOpList(false), ViewBanList(false);
      
        private boolean hasModifier;
        
        Channel(boolean hasModifier)
        {
            this.hasModifier = hasModifier;
        }
      
        public boolean hasModifier()
        {
            return hasModifier;
        }
    }
    
}
